Unityサウンド エキスパート養成講座
https://gyazo.com/653f1dfa80f6d8087ad41aba64fc5d90
2019
VRコンテンツ(Oculus Go対応)にも対応。VRの没入感や実在感(プレゼンス)を引き上げるためのサウンド実装と演出設定についても詳しく解説します
・専用ツールを使ったサウンド演出設定と再生制御
・大量セリフ音声データの管理
・Androidで発生する再生遅延への対処
・インタラクティブ・ミュージックの実装
目次
序章 本書でサウンドシステムを学ぶ前の基礎知識
0-1 本書の読者対象者
本書で説明を省略している基礎知識
本書はすべてのジャンルのゲーム開発に役立ちます
本書の構成
0-2 ゲームにおけるサウンドとは
サウンドデータの構成を考える
ゲーム内で再生される音の種類
ゲーム世界内の音と外の音
ゲーム全体の音のバランスをとる
音のデジタル処理入門
音のデジタル化とサンプリングレート
デシベルとは
ゲームにおけるデジタル音声技術
インタラクティブミュージック
サウンド再生の処理負荷を抑える
CPU 負荷:圧縮音声とデコード
メモリ使用量 : ストレージからのロードとメモリへの展開
再生遅延:ハードウェアごとに異なる音の再生の遅れ
スマートフォンゲームにおけるサウンド開発の課題
0-3 サウンド開発の前に知っておくべき Unity のコツ
スクリプティングのコツ
サウンド機能を独自開発するか、 ミドルウェアを使用するか?
1章 Unity Audio -基礎編
1-1 サンプルゲーム 「ゆるっと林業せいかつ」 の構成
プラットフォーム共通の設定
Normalize
Load In Background
プラットフォーム個別の設定
Override for ~
LoadType
Preload Audio Data
Compression Format
Quality
Sampling Rate Setting.
プレビューウィンドウ.
Audio Clip のまとめ
1-4 Audio Source の機能
3D Sound Settings
Audio Source コンポーネントのプロパティ
Audio Source コンポーネントのメソッド
1-5 Audio Listener の機能
Audio Listener のプロパティ
Audio Listener のメソッド
1-6 サウンドマネージャークラスの実装
一般的なサウンド再生システムの構成
前準備 Audio Source の機能拡張
SoundManager クラスの概要
ボタンを押したときの音の実装
Audio Clip の最適化
1-7 BGM のクロスフェードの実装
コルーチンを使ったフェードの実装例
Tween ライブラリを使った実装.
1-8 効果音の再生
ゲーム SE 再生用スクリプトの実装
ゲーム SE の再生
アニメーションと連動したゲームSE の再生
1-9 音の鳴り方をランダムで変える
SEのピッチをランダムに変更する
環境音の再生開始位置をランダムにする
ランダム再生のさらなる機能追加方針
1-10 ポーズ機能の実装
2種類のポーズ
SoundManager でのポーズ実装
ゲームSE のポーズ
ポーズ機能のさらなる改修方針
2章 Unity Audio 一応用編
Audio Mixer のウィンドウを開く
Audio Mixer のインスペクター
基本操作
Audio Mixer Group のボタンとスライダー
Audio Mixer Group の階層構造と表示切り替え
SnapShot によるパラメータ設定の保存
Audio Mixer Group の表示切り替え
View による表示設定の保存
Audio Mixer Group の色分け
Audio Mixer Group のインスペクター
インスペクターヘッダー
Attenuation ユニット (減衰ユニット)
Audio Effect ユニット
Send / Receive ユニット
Duck Volume ユニット
パラメータをエクスポーズしてスクリプトから操作する
エフェクトの Wet Mixing
Audio Mixer クラスのメソッドとプロパティ
AudioMixerSnapshot クラスのメソッド
2-2 Audio Settings の機能
Global Volume
Volume Rolloff Scale
Doppler Factor
Default Speaker Mode
System Sample Rate
DSP Buffer Size
Max Virtual Voices
Max Real Voices
Spatializer Plugin
Ambisonic Decoder Plugin.
Disable Unity Audio
Virtualize Effects
Audio Settings クラスのメソッド
Audio Settings クラスのプロパティ
Audio Settings クラスのデリゲード
2-3 Profiler を使ったサウンド処理負荷の確認
2-4 ボリューム設定画面の実装
Audio Mixer を用意する
Audio Mixer Group & Audio Source
スクリプトで Audio Mixer Group の参照を Audio Source に設定する
ボリュームスライダーとの紐づけ
2-5 サウンドエフェクトの利用
複数の Audio Mixer Group を使う
ゲームの場面に応じてエフェクトパラメータを切り替える
セリフが再生されたときに BGMの音量を自動で下げる (ダッキング)
キャラクターの位置に応じて残響音を変化させる
2-6 Unity Audio 活用ガイド
圧縮設定やロード方式をディレクトリごとに自動設定する
再生優先度の指定
複数のAudio Clipを連続して再生する
同時再生数の上限管理を実装する
Audio Clip のロードを管理する
マイク録音(Microphone クラス)と音声解析
Unity Audio を拡張する外部スクリプト
3章 VR コンテンツのサウンド
3-1 VR コンテンツにおけるサウンドとは
反響音の再現
線・面音源と容積のある音源の再現
そのほかの音響シミュレート要素
アンビソニック用機材とデータ形式
アンビソニックの使い道
そのほかの VR サウンドのコツ
3-2 Unity におけるVR サウンド導入の種類
ビルドインの VR 音響プラグイン..
空間音響 SDK の導入
Unity Audio Spatializer SDK
3-3 Oculus Go / Quest で Unity アプリを実行する
Oculus Go / Oculus Quest アプリを Unity で開発する環境
Unity プロジェクトのセットアップ
Oculus Go / Quest でテストビルドを実行
Oculus Integration の諸注意
Spatialization (固定 shoebox)
Dynamic Room Modeling
Audio Propagation (Beta)
Ambisonic Audio
ONSP Audio Source
Oculus Spatializer Reflection (Mixer ユニット)
ONSP Reflection Zone
ONSP Ambisonics Native
Oculus Spatializer Unity
ONSP Propagation Geometry / ONSP Propagation Material
3-5 VR のサウンド演出設定
デモゲームの概要と遊び方
Spatialize 設定と再生
アンビソニック音源の再生
4章 サウンドミドルウェア 「CRI ADX2」 を使った実装
4-1 CRI ADX2 とは
CRI ADX2 の特徴
Android 端末用の低遅延なサウンド再生システム
大量音声データの管理と調整が可能なツール
サウンド演出のコーディング量を減らす
インタラクティブサウンドの実現
ADX2 のエディションと利用ルール
無償版 「ADX2 LE」
製品版 「ADX2」
CRI ADX2 Unity Plugin/AssetStore 版
各プラットフォーム向けのADX2
ADX2 機能の利用方針
4-2 ADX2 クイックスタート
SDK の入手
個人の場合
ゲーム開発会社の場合
ゲーム開発会社以外の場合
CRI Atom Craft の動作環境とセットアップ
CRI Atom Craftで再生用データを生成する.
ADX2 for Unity パッケージの導入
4-3 ADX2 によるゲームサウンド開発のワークフロー
Unity Audio との違い
ADX2 データの階層構造
ワークユニット
キューシート
キュー
トラック
ウェーブフォーム
キュー再生時のライブラリ内部処理
ADX2 の基本的なワークフロー
①マテリアルの登録
② 「キュー」を介した音のデザイン
③ DSP バスを使ったサウンドエフェクトの設定
④ ビルド (データ出力)
ACF ファイル(Atom コンフィグファイル)
ACB ファイル (Atom キューシートバイナルファイル)
AWB ファイル (Atom ウェーブバンクファイル)
ヘッダファイル.
ビルド時の注意
Unity への組み込み.
4-4 CRI Atom Craft の基本操作
ツールバー(左側ボタン)
ツールバー (右側)
ビュー
インスペクタービュー
タイムラインビュー
キュー選択中のインスペクタービュー
ミキサー (DSP バス設定) ビュー
ポイントリストビュー
リストエディタービュー
被参照リストビュー
プロジェクトツリービュー
ワークユニットツリービュー
マテリアルツリービュー
REACT ビュー
パラメータパレットビュー
マテリアルビュー
レベルメータービュー
検索ビュー
ログビュー
クイックヘルプビュー
スタートページ
ビューレイアウトの呼び出しと保存.
ビルドダイアログ
Atom Craft のバージョン差異について
4-5 ADX2 for Unity コンポーネントとスクリプト
CRIWARE Library Initializer
CRIWARE Error Handler
CRI Atom
CRI Atom Listener.
CRI Atom Source
スクリプトの基本的な利用方法と Execution Order
ADX2 Editor
4-6 ADX2 の目玉機能をすばやく導入する
BGM のイントロ付きループ再生
HCA-MX を利用した CPU 負荷軽減
Android で起きる再生遅延の対策機能を利用する
4-7 ADX2 を使ったサウンド演出の設定−前編
サンプルゲームのプロジェクト構成
ADX2 コンポーネントの基本的な利用方法
フェードイン・アウトの実装
ポーズの実装
キュー設定を駆使して音のバリエーションを増やす
ゲームの状況に合わせて効果音の音色を変化させる
4-8 ADX2 を使ったサウンド演出の設定-後編
キューに文字列情報を埋め込んで利用する
タイミング情報を埋め込んで利用する.
キューをカテゴリ分けして管理する
ゲームの場面に合わせて残響音を加える
インタラクティブな 「アレンジ」の変化.
インタラクティブな 「展開」 の変化
DAWソフトから出力する際の注意点
キューの詳細設定編.
Atom Craft設定活用編
音声データ管理編
便利機能編
キューをWAVE ファイル出力する
Atom Craftでムービーを流しながら再生タイミングを合わせる.
曲のBPM(テンポ) を静的に解析する
プロジェクトファイルのバックアップをとる
波形エディター (WAVE加工ツール) を AtomCraft から呼び出す
Excel 連携機能編
csvファイルからキューを生成する
キューシート情報を CSV インポート・エクスポートする
マテリアル情報の csvファイルのインポート・エクスポート
ビルド関連編
クリーンビルドとキャッシュクリア
Atom Craft におけるビルド時のポストプロセス設定
ビルドしたキューシートの中身をXML 出力する
4-11 ADX2 の機能をさらに使いこなす
ゲームを実行しながらリアルタイムでパラメータの調整を行う
プロファイラウィンドウ
複数キューの組み合わせやパラメータ設定をツールで確認する
3D ゲーム向けの設定
4-12 ADX2 活用の道しるべ
ADX2 に関する各ドキュメント
ADX2 のデモプロジェクト
ADX2 の拡張機能
アクション機能
マルチスピーカー環境 (5.1ch、 7.1ch など) 向け設定
ゲーム生放送や、 複数サウンドデバイスがある場合の処理..
ローカライズ(多言語対応)
追加コンテンツ (DLCやデータ配信) 機能
MIDI デバイスを使ってパラメータを操作する
ビート同期 (クォンタイズ)
音が鳴らないときは
Atom Craft を複数人で使う
ゲームの配信前に行うこと
5 ゲームサウンド開発にまつわる補足情報
5-1 サウンド素材の入手と加工ツール
5-2 音量バランスの調整 (ラウドネス)
ラウドネスとは
ラウドネス値の測定方法
5-3 ゲームサウンド技術の未来
プロシージャルな効果音
空間音響の物理シミュレーション
プレイヤーの耳の形に合わせた HRTF 係数調整.
索引 (CRT ADX2 関連)
索引 (VR 関連)
索引
コラム一覧
DLsiteでよくみるやつでしょ基素.icon
楽曲を発注してみよう.
CRI ADX2 の費用と、 法人で利用する際のポイント
サンプルゲーム 『ノーダメージ勇者さま』 の遊び方....
音声制作の発注から納品まで